a11y: Clean up properly in unregister_object
authorMatthias Clasen <mclasen@redhat.com>
Mon, 9 Nov 2020 19:38:55 +0000 (14:38 -0500)
committerMatthias Clasen <mclasen@redhat.com>
Mon, 9 Nov 2020 23:48:10 +0000 (18:48 -0500)
Things that are set up in register_object should
be cleaned up in unregister_object.

gtk/a11y/gtkatspicontext.c

index 7b3db2cf6b1ffb80f3ec71c6c5da708f5be4f6c6..98bde0a0e7b3cbefd0cb6db16f438f4e32262ae8 100644 (file)
@@ -1387,9 +1387,11 @@ gtk_at_spi_context_unregister_object (GtkAtSpiContext *self)
                                            self->registration_ids[self->n_registered_objects]);
       self->registration_ids[self->n_registered_objects] = 0;
     }
+
+  g_clear_pointer (&self->interfaces, g_variant_unref);
 }
 /* }}} */
-/* {{{ GObject boilerplate */
+/* {{{ GObject boilerplate */ 
 static void
 gtk_at_spi_context_finalize (GObject *gobject)
 {
@@ -1399,7 +1401,6 @@ gtk_at_spi_context_finalize (GObject *gobject)
 
   g_free (self->bus_address);
   g_free (self->context_path);
-  g_clear_pointer (&self->interfaces, g_variant_unref);
 
   G_OBJECT_CLASS (gtk_at_spi_context_parent_class)->finalize (gobject);
 }